
#ifndef WISHMASTER_CODER_H
#define WISHMASTER_CODER_H

#include <QByteArray>
#include <QSharedPointer>
#include "components/post.h"

namespace Wishmaster
{
	class Coder
	{
	public:
		Coder();
		virtual ~Coder();

		virtual int token() = 0;
		virtual QString infoId() = 0;

		virtual bool extract(PostPtr& post, const QByteArray& source) = 0;
		virtual QByteArray store(const ExtraInfo& info) = 0;
		
	};
	typedef QSharedPointer<Coder> CoderPtr;
}

#endif

